package com.sxd.report.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.sxd.common.annotation.Excel;
import com.sxd.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 【请填写功能名称】对象 fin_invoicerecvcoll
 * 
 * @author ruoyi
 * @date 2021-01-21
 */
public class FinInvoicerecvcoll extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 客户名称 */
    @Excel(name = "客户名称")
    private String customer;

    /** 合同编号 */
    @Excel(name = "合同编号")
    private String contrNo;

    /** 价税合计 */
    @Excel(name = "价税合计")
    private Long priceTaxTotal;

    /** 开票金额不含税 */
    @Excel(name = "开票金额不含税")
    private Long invoiceAmtTaxFree;

    /** 销项税额 */
    @Excel(name = "销项税额")
    private Long outputTax;

    /** 摘要 */
    @Excel(name = "摘要")
    private String invoiceRemark;

    /** 销售部门代码 */
    @Excel(name = "销售部门代码")
    private String departmentId;

    /** 销售部门 */
    @Excel(name = "销售部门")
    private String departmentName;

    /** 业务员 */
    @Excel(name = "业务员")
    private String businessMan;

    /** 税率（本期） */
    @Excel(name = "税率", readConverterExp = "本=期")
    private Long taxRate;

    /** 开票日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开票日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date invoiceTime;

    /** 发票号 */
    @Excel(name = "发票号")
    private String invoiceNo;

    /** 发票状态 */
    @Excel(name = "发票状态")
    private String invoiceStatus;

    /** 回款金额 */
    @Excel(name = "回款金额")
    private Long recvAmt;

    /** 回款日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "回款日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date recvTime;

    /** 项目 */
    @Excel(name = "项目")
    private String proName;

    /** 收入分类 */
    @Excel(name = "收入分类")
    private String incomeType;

    /** 商务 */
    @Excel(name = "商务")
    private String applicant;

    /** 回款月份 */
    @Excel(name = "回款月份")
    private String recvMon;

    /** 币种 */
    @Excel(name = "币种")
    private String currencyType;

    /** 法人 */
    @Excel(name = "法人")
    private String legalPerson;

    /** 汇率 */
    @Excel(name = "汇率")
    private Long exchangeRate;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setCustomer(String customer) 
    {
        this.customer = customer;
    }

    public String getCustomer() 
    {
        return customer;
    }
    public void setContrNo(String contrNo) 
    {
        this.contrNo = contrNo;
    }

    public String getContrNo() 
    {
        return contrNo;
    }
    public void setPriceTaxTotal(Long priceTaxTotal) 
    {
        this.priceTaxTotal = priceTaxTotal;
    }

    public Long getPriceTaxTotal() 
    {
        return priceTaxTotal;
    }
    public void setInvoiceAmtTaxFree(Long invoiceAmtTaxFree) 
    {
        this.invoiceAmtTaxFree = invoiceAmtTaxFree;
    }

    public Long getInvoiceAmtTaxFree() 
    {
        return invoiceAmtTaxFree;
    }
    public void setOutputTax(Long outputTax) 
    {
        this.outputTax = outputTax;
    }

    public Long getOutputTax() 
    {
        return outputTax;
    }
    public void setInvoiceRemark(String invoiceRemark) 
    {
        this.invoiceRemark = invoiceRemark;
    }

    public String getInvoiceRemark() 
    {
        return invoiceRemark;
    }
    public void setDepartmentId(String departmentId) 
    {
        this.departmentId = departmentId;
    }

    public String getDepartmentId() 
    {
        return departmentId;
    }
    public void setDepartmentName(String departmentName) 
    {
        this.departmentName = departmentName;
    }

    public String getDepartmentName() 
    {
        return departmentName;
    }
    public void setBusinessMan(String businessMan) 
    {
        this.businessMan = businessMan;
    }

    public String getBusinessMan() 
    {
        return businessMan;
    }
    public void setTaxRate(Long taxRate) 
    {
        this.taxRate = taxRate;
    }

    public Long getTaxRate() 
    {
        return taxRate;
    }
    public void setInvoiceTime(Date invoiceTime) 
    {
        this.invoiceTime = invoiceTime;
    }

    public Date getInvoiceTime() 
    {
        return invoiceTime;
    }
    public void setInvoiceNo(String invoiceNo) 
    {
        this.invoiceNo = invoiceNo;
    }

    public String getInvoiceNo() 
    {
        return invoiceNo;
    }
    public void setInvoiceStatus(String invoiceStatus) 
    {
        this.invoiceStatus = invoiceStatus;
    }

    public String getInvoiceStatus() 
    {
        return invoiceStatus;
    }
    public void setRecvAmt(Long recvAmt) 
    {
        this.recvAmt = recvAmt;
    }

    public Long getRecvAmt() 
    {
        return recvAmt;
    }
    public void setRecvTime(Date recvTime) 
    {
        this.recvTime = recvTime;
    }

    public Date getRecvTime() 
    {
        return recvTime;
    }
    public void setProName(String proName) 
    {
        this.proName = proName;
    }

    public String getProName() 
    {
        return proName;
    }
    public void setIncomeType(String incomeType) 
    {
        this.incomeType = incomeType;
    }

    public String getIncomeType() 
    {
        return incomeType;
    }
    public void setApplicant(String applicant) 
    {
        this.applicant = applicant;
    }

    public String getApplicant() 
    {
        return applicant;
    }
    public void setRecvMon(String recvMon) 
    {
        this.recvMon = recvMon;
    }

    public String getRecvMon() 
    {
        return recvMon;
    }
    public void setCurrencyType(String currencyType) 
    {
        this.currencyType = currencyType;
    }

    public String getCurrencyType() 
    {
        return currencyType;
    }
    public void setLegalPerson(String legalPerson) 
    {
        this.legalPerson = legalPerson;
    }

    public String getLegalPerson() 
    {
        return legalPerson;
    }
    public void setExchangeRate(Long exchangeRate) 
    {
        this.exchangeRate = exchangeRate;
    }

    public Long getExchangeRate() 
    {
        return exchangeRate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("customer", getCustomer())
            .append("contrNo", getContrNo())
            .append("priceTaxTotal", getPriceTaxTotal())
            .append("invoiceAmtTaxFree", getInvoiceAmtTaxFree())
            .append("outputTax", getOutputTax())
            .append("invoiceRemark", getInvoiceRemark())
            .append("departmentId", getDepartmentId())
            .append("departmentName", getDepartmentName())
            .append("businessMan", getBusinessMan())
            .append("taxRate", getTaxRate())
            .append("invoiceTime", getInvoiceTime())
            .append("invoiceNo", getInvoiceNo())
            .append("invoiceStatus", getInvoiceStatus())
            .append("recvAmt", getRecvAmt())
            .append("recvTime", getRecvTime())
            .append("proName", getProName())
            .append("incomeType", getIncomeType())
            .append("applicant", getApplicant())
            .append("recvMon", getRecvMon())
            .append("currencyType", getCurrencyType())
            .append("legalPerson", getLegalPerson())
            .append("exchangeRate", getExchangeRate())
            .toString();
    }
}
